//加载mongoose模块文件
var mongoose = require('mongoose')
    //连接MongoDB数据库
    //指定链接数据库不需要存在，当插入第一条数据后会自动被创建出来
mongoose.connect('mongodb://localhost/students', { useMongoClient: true })
var Schema = mongoose.Schema
var studentSchema = new Schema({
    //设计集合结构（表结构）
    //字段名称就是表结构中的属性名称
    //约束的目的是为了保证数据的完整性，不要有脏数据
    name: {
        type: String,
        required: true
    },
    gender: {
        type: Number,
        enum: [0, 1],
        default: 0
    },
    age: {
        type: Number
    },
    hobbies: {
        type: String
    }
})
var User = mongoose.model('Student', studentSchema)

//为数据库添加数据
// var admin = new User({
//     name: '陈星旭',
//     gender: 1,
//     age: '23',
//     hobbies: '灭你全族'
// })
// admin.save(function(err, ret) {
//         if (err) {
//             console.log('保存失败')
//         } else {
//             console.log('保存成功')
//             console.log(ret)
//         }
//     })
//3.将文档结构发布为模型
//mongoose.model方法就是用来将一个架构发布为model
//第一个参数：传入一个大写名词字符串用来表示数据库名称
//            mongoose会自动把大写名词字符串生成小写复数的集合名称
//              例如这里的User最终会变为users集合名称
//   第二个参数：架构Schema
//导出模型构造函数
module.exports = mongoose.model('Student', studentSchema)